EDAToolsCafe, the Worlds #1 EDA Web Portal.
Search:
HP Invent
  Home | Companies | Design Tools | Downloads | Demos | News | Jobs | Resources | Universities | Books & Courses | e-Store
  Check Mail | Free Email | Submit Material | Newsgroups | Events | e-Contact | Membership | Fun Stuff | Weather | Advertise | e-Catalog Signup >> Site Tour <<
 Browse eCatalog:  Subscribe to EDA Daily News
eCatalogAsic & ICPCBFPGADesign Services
Email: 

Resources: Users Groups |  Tech Papers |  Calendar |  Organizations |  Usenet |  Publications |  Discussion Groups |  Courses
  EDA Resources
Research Center EDAToolsCafe Research Center  
Printer Friendly Version

Designers Corner with Prof. Mike Smith  Part 1  Part 2

Freezing a design and feature creep

About three weeks into designing the prototype (counting the first point we started work on the schematic as the beginning of design) we decided to freeze our design. At the last moment, we debated the idea of adding a USB connection or other debugging methods, but decided against it. Many times before (and it was to happen again) I have discovered that mistakes get made when you add features at the last minute (feature creep).

We “played it safe” by adding lots of standard 0.1-inch square header pins around the FPGA wired to the majority of the FPGA I/O pins. These header pins would allow us to make jumper connections if needed (and we did need and use these). Both Hamish and I have learned from experience the tremendous power that programmable logic gives you in being able to make a few external changes along with internal logic changes in a CPLD or FPGA. This ability to make logic and design changes rapidly proved very useful in our system.

We used a “play area”, a 3- by 4-inch area of a breadboard-like array of 0.1-inch spaced through-holes, which we could use to add any other chips and devices we might need (either to fix bugs or add functions). Such extra prototyping areas seem like a good idea, but in practice they rarely seem to get used. The addition of header pins around the FPGA is much more useful.

We socketed the FPGA (largely because we wished to be able to change between a variety of FPGA parts with the same footprint in the Xilinx Virtex family). We did not worry too much about cost of the board at this point. The zero insertion force sockets for large (we were using a 240-pin quad flatpack package) chips are expensive (several hundred dollars each), but there happened to be a few of these sockets left over from a previous project.

We decided not to socket the CPLD, RAM, or PHY chips. Several times when we were debugging our system we suspected a problem was due to a failure, defect, or other problem with one of these chips. Often we would swap out the FPGA just to see if that was causing a problem. Many times we were caught wishing that we had socketed all the chips. However, my experience in debugging prototype boards that use production (not preproduction) chips is that chips are almost never the cause of problems. Well over 95% of the time it is a design failure, not a chip failure.

Table of Contents   Previous   Next
Learn More about Aldec-HDL 4.0XE
Copyright 2000, Internet Business Systems, Inc.
1-888-44-WEB-44 --- marketing@ibsystems.com
Support
Phone Support